#!/bin/bash

# just a wrapper for the perl script.


while test $# -gt 0; do
  case $1 in
    *-outdir)
      MYOUTDIR="$2"
      shift
    ;;
    *-specfile)
      MYSPECFILES="$MYSPECFILES $2"
      shift
    ;;
    *)
      echo Unknown parameter $1.
      echo 'Usage: this service is not excepting parameters'
      exit 1
    ;;
  esac
  shift
done

RETURN=0
if [ -z "$MYSPECFILES" ]; then
  MYSPECFILES=`echo *.spec`
fi
for i in $MYSPECFILES; do
  if [ "$i" == '*.spec' ]; then
    echo "WARNING: no spec file found"
    exit 0
  fi
  if /usr/lib/obs/service/format_spec_file.files/prepare_spec "$i" > "$MYOUTDIR/$i.$$"; then
    # remove all file files which are indendical to committed files
    # be carefull for the case that $MYOUDIR is local dir
    if cmp -s "$i" "$MYOUTDIR/$i.$$"; then
      rm "$MYOUTDIR/$i.$$"
    else
      mv "$MYOUTDIR/$i.$$" "$MYOUTDIR/$i"
    fi
  else
    rm "$MYOUTDIR/$i.$$"
    RETURN=1
  fi
done

exit $RETURN

